package fy.form.listen.set;

public interface IFormSetting {
	
	public String[] getTemplateCodes();

	public String getOperatorClassName();
	
	/**
	 * 是否监听表单发起事件
	 * @return boolean
	 */
	public boolean isStartEventMonitor();
	
	/**
	 * 是否监听表单审核通过事件
	 * @return boolean
	 */
	public boolean isProcessEventMonitor();
	
	
	/**
	 * 是否监听表单流程结束事件
	 * @return boolean
	 */
	public boolean isFinishEventMonitor();
	
	
	/**
	 * 是否监听表单撤销流程事件
	 * @return boolean
	 */
	public boolean isCancelEventMonitor();
	
	/**
	 * 是否监听表单流程终止事件
	 * @return boolean
	 */
	public boolean isStopEventMonitor();
	
	
	
	/**
	 * 是否监听表单回退事件
	 * @return boolean
	 */
	public boolean isStepBackEventMonitor();
	
	
	
	/**
	 * 是否监听表单取回事件
	 * @return boolean
	 */
	public boolean isTakeBackEventMonitor();
	
	/**
	 * 设置流程当前状态
	 * <br>0：待发
	 */	
	public final static short DRAFT_STATUS = 0;
	/**
	 * 设置流程当前状态
	 * <br>1:发送
	 */
	public final static short START_STATUS = 1;
	/**
	 * 设置流程当前状态
	 * <br>2:流程审批通过
	 */
	public final static short PROCESS_STATUS = 2;
	/**
	 * 设置流程当前状态
	 * <br>3:流程结束
	 */
	public final static short FINISH_STATUS = 3;
	/**
	 * 设置流程当前状态
	 * <br>4:流程取回
	 */
	public final static short TAKEBACK_STATUS = 4;
	/**
	 * 设置流程当前状态
	 * <br>5:流程撤销
	 */
	public final static short CANCEL_STATUS = 5;
	/**
	 * 设置流程当前状态
	 * <br>6:流程终止
	 */
	public final static short STOP_STATUS = 6;
	/**
	 * 设置流程当前状态
	 * <br>7:流程回退
	 */
	public final static short STEPBACK_STATUS = 7;
	
}
